Aalisarneq piniarnerlu


Aalisarneq
FIX008_raw <- 
  statgl_url("FIX008", lang = language) %>%
  statgl_fetch(
    time      = px_top(1),
    nation    = "GRL",
    species   = px_all(),
    unit      = px_all(),
    .col_code = TRUE
  ) %>% 
  as_tibble()


FIX008 <- 
  FIX008_raw %>% 
  select(time, unit, species, value) %>% 
  filter(value != 0) %>% 
  spread(unit, value)

FIX008 %>% 
  select(-1) %>% 
  rename(" " = 1) %>% 
  statgl_table() %>% 
  pack_rows(index = FIX008[["time"]] %>% table())
1.000 kr. Tonsit
2023
Ammassak 199.338 46.431
Ammassassuaq 45.561 7.334
Avaleraasartooq 285.751 29.090
Kinguppak 1.942.454 61.914
Misaqqarnaq 9.083 665
Nataarnaq 229 9
Pisarisuukkat 11.651 872
Qaleralik 351.010 12.430
Suluppaagaq 25.201 2.576
Saarullernaq 72.669 25.988
Saarullik 524.421 29.190
Saarulliusaaq 4.778 410
Uiluik 11.329 629
Aalisakkat allat 1.778 128


Se Statistikbankens tabel: FIX008

Piniarneq


FIX004_raw <- 
  statgl_url("FIX004", lang = language) %>% 
  statgl_fetch(
    time      = px_all(),
    species   = px_all(),
    unit      = px_all(),
    .col_code = TRUE
  ) %>% 
  as_tibble()

FIX004 <- 
  FIX004_raw %>% 
  filter(
    time == max(time),
    value != 0
    ) %>% 
  spread(unit, value)

FIX004 %>% 
  select(-1) %>% 
  rename(" " = 1) %>% 
  statgl_table() %>% 
  pack_rows(index = FIX004[["time"]] %>% table())
1.000 kr. Ton
2022
Miluumasut nunamiutat allat 1.058 12,42
Sava 1.699 47,16
Savaaraq 16.057 292,49
Tuttu 376 4,65


Se Statistikbankens tabel: FIX004

FIXBEVIS_raw <- 
  statgl_url("FIXBEVIS", lang = language) %>% 
  statgl_fetch(
    "geographic location" = px_all(),
    sex                   = px_all(),
    time                  = px_all(),
    .col_code             = TRUE
  ) %>% 
  as_tibble()

FIXBEVIS <- 
  FIXBEVIS_raw %>% 
  filter(time == max(time)) %>% 
  spread(`geographic location`, value)


FIXBEVIS %>% 
  select(-time) %>% 
  rename(" " = 1) %>% 
  statgl_table() %>% 
  pack_rows(index = FIXBEVIS[["time"]] %>% table())
sex Illoqarfik Nunaqarfik
2022
Inuussutissarsiutigalugu piniartut Angutit 1.037 966
Inuussutissarsiutigalugu piniartut Arnat 11 9
Sunngiffimmi pinialuttartut Angutit 3.533 478
Sunngiffimmi pinialuttartut Arnat 947 163


Se Statistikbankens tabel: FIXBEVIS

Nunalerineq
FIXHDYR_raw <- 
  statgl_url("FIXHDYR", lang = language) %>% 
  statgl_fetch(
    species   = px_all(),
    time      = px_all(),
    .col_code = TRUE
  ) %>% 
  as_tibble()


FIXHDYR <-
  FIXHDYR_raw %>% 
  filter(time == max(time)) %>% 
  filter(value != "NA")



if(language == "da"){
  table <- FIXHDYR %>% rename("Antal" = value)
} else if(language == "kl"){
  table <- FIXHDYR %>% rename("Qassiuneri" = value)
} else {
  table <- FIXHDYR %>% rename("Pieces" = value)
}


table %>% 
  select(-time) %>% 
  rename(" " = 1) %>% 
  statgl_table() %>% 
  pack_rows(index = FIXHDYR[["time"]] %>% table())
Qassiuneri
2021
Savat 18.184
Tuttut nujuitsut 3.000
Nersussuit 356
Hiistit 146
Kukkukuut 219


Se Statistikbankens tabel: FIXHDYR

Akit naleqqersuutaat
FIX009_raw <- 
  statgl_url("FIX009", lang = language) %>% 
  statgl_fetch(
    time      = px_all(),
    quarter   = 4,
    species   = c(3, 7, 10),
    .col_code = TRUE
  ) %>% 
  as_tibble()



FIX009 <- 
  FIX009_raw %>% 
  filter(value != "NA") %>% 
  spread(time, value)



FIX009 %>% 
  select(-quarter) %>% 
  rename(" " = 1) %>% 
  statgl_table() %>% 
  pack_rows(index = FIX009[["quarter"]] %>% table())
2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022
Agguaq.
Kinguppak, katillugit 100 115 145 147,5 166 202 202 196 207 196 169 166 188
Qaleralik, katillugit 100 116 127 121,7 123 154 149 151 154 148 134 132 161
Saarullik, Katillugit 100 118 115 90,3 103 137 135 144 165 186 162 163 228


Se Statistikbankens tabel: FIX009

Immap pisuusutaanik atuineq
FIX020_raw <- 
  statgl_url("FIX020", lang = language) %>% 
  statgl_fetch(
    species = px_all(),
    form = px_all(),
    time = px_all(),
    .col_code = TRUE
  ) %>% 
  as_tibble()

FIX020 <- 
  FIX020_raw %>% 
  filter(time == max(time)) %>% 
  spread(form, value)


FIX020 %>% 
  select(-time) %>% 
  rename(" " = 1) %>% 
  statgl_table(replace_0s = TRUE) %>% 
  pack_rows(index = FIX020[["time"]] %>% table())
Pisassat Pisat Siunnersuut
2021
Arfivik 2 0 2
Nanoq 156 137 146
Qilagugaq qaqortaq 294 148 302
Qilalugaq qernertaq 499 419 419
Qipoqqaq 10 7 10
Tikaagullik 184 198 184
Tikaagulliusaaq 19 2 19
Aaveq 170 127 189


Se Statistikbankens tabel: FIX020


Sidst opdateret: 17. april 2024
LS0tDQpwYXJhbXM6DQogIGxhbmc6ICJkYSINCm91dHB1dDoNCiAgc3RhdGdsOjpzdGF0Z2xfcmVwb3J0Og0KICAgIGNvZGVfZG93bmxvYWQ6IHRydWUNCiAgICBjb2RlX2ZvbGRpbmc6IGhpZGUNCmVkaXRvcl9vcHRpb25zOiANCiAgY2h1bmtfb3V0cHV0X3R5cGU6IGNvbnNvbGUNCi0tLQ0KDQpgYGB7ciBzZXR1cCwgaW5jbHVkZT1GQUxTRX0NCg0Ka25pdHI6Om9wdHNfY2h1bmskc2V0KA0KCWVjaG8gICAgPSBUUlVFLA0KCW1lc3NhZ2UgPSBGQUxTRSwNCgl3YXJuaW5nID0gRkFMU0UsDQoJY2xhc3Mub3V0cHV0ID0gInNjcm9sbC0xMDAiDQopDQoNCmxpYnJhcnkoInRpZHl2ZXJzZSIpDQpsaWJyYXJ5KCJzdGF0Z2wiKQ0KbGlicmFyeSgia2FibGVFeHRyYSIpDQpsaWJyYXJ5KCJsdWJyaWRhdGUiKQ0KbGlicmFyeSgieWFtbCIpDQoNCmxhbmd1YWdlICA8LSBwYXJhbXMkbGFuZw0Kb3B0aW9uICAgIDwtIHBhc3RlMCgiP2xhbmc9IiwgbGFuZ3VhZ2UsICImc2VsZWN0IikNCmxvZ28gICAgICA8LSBwYXN0ZTAoZ2V0d2QoKSwiL2FkZC9sb2dvLmdpZiIpDQp0eHQgICAgICAgPC0gcmVhZF95YW1sKHBhc3RlMChnZXR3ZCgpLCAiL2FkZC90eHQueW1sIiksIGZpbGVFbmNvZGluZyA9ICJJU08tODg1OS0xIikNCnNvdXJjZSAgICA8LSB0eHQkc291cmNlW2xhbmd1YWdlXSAlPiUgdW5saXN0KCkNCg0KeGFyaW5nYW5FeHRyYTo6dXNlX2NsaXBib2FyZCgpDQoNCmBgYA0KDQpgYGB7Y3NzLCBlY2hvID0gRkFMU0V9DQoNCi5hY2NvcmRpb24gew0KICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTE5OTAwOw0KICBjb2xvcjogd2hpdGU7DQogIGN1cnNvcjogcG9pbnRlcjsNCiAgcGFkZGluZzogMThweDsNCiAgd2lkdGg6IDEwMCU7DQogIGJvcmRlcjogbm9uZTsNCiAgYm9yZGVyLXJhZGl1czogNXB4Ow0KICB0ZXh0LWFsaWduOiBsZWZ0Ow0KICBvdXRsaW5lOiBub25lOw0KICBmb250LXNpemU6IDE1cHg7DQogIHRyYW5zaXRpb246IDAuNHM7DQp9DQoNCi5hY3RpdmUsIC5hY2NvcmRpb246aG92ZXIgew0KICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjk3MjQyOw0KfQ0KDQouYWNjb3JkaW9uOmFmdGVyIHsNCiAgY29udGVudDogJ1wwMDJCJzsNCiAgY29sb3I6ICM3Nzc7DQogIGZvbnQtd2VpZ2h0OiBib2xkOw0KICBmbG9hdDogcmlnaHQ7DQogIG1hcmdpbi1sZWZ0OiA1cHg7DQp9DQoNCi5hY3RpdmU6YWZ0ZXIgew0KICBjb250ZW50OiAiXDIyMTIiOw0KfQ0KDQoucGFuZWwgew0KICBwYWRkaW5nOiAwcHggNXB4IDBweCA1cHg7DQogIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOw0KICBtYXgtaGVpZ2h0OiAwOw0KICBvdmVyZmxvdzogaGlkZGVuOw0KICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDAuMnMgZWFzZS1vdXQ7DQp9DQoNCmRldGFpbHMgew0KICB3aWR0aDogMTAwJTsNCn0NCg0KZGV0YWlscyA+IHN1bW1hcnkgew0KICBwYWRkaW5nOiA0cHggMTJweDsNCiAgd2lkdGg6IDEwMCU7DQogIGJhY2tncm91bmQtY29sb3I6ICMwMDdmOTk7DQogIGJvcmRlcjogc29saWQ7DQogIGJvcmRlci1jb2xvcjogd2hpdGU7DQogIGJvcmRlci1yYWRpdXM6IDVweDsNCiAgY3Vyc29yOiBwb2ludGVyOw0KICBmb250LXNpemU6IDE1cHg7DQogIGNvbG9yOiB3aGl0ZTsNCn0NCg0KZGV0YWlsc1tvcGVuXSA+IHN1bW1hcnkgew0KICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFhNDFhOw0KfQ0KDQoNCi50aXRsZSB7DQogIGNvbG9yOiAjMWI1NDYzOw0KICBmb250LXNpemU6IDM2cHg7DQp9DQoNCg0KLnBlcnNvbmVyIHsNCiAgYm94LXNoYWRvdzogM3B4IDNweCA0cHggYmxhY2s7DQogIGJhY2tncm91bmQ6ICMwMDQ0NTk7DQogIHBhZGRpbmctcmlnaHQ6IDE1cHg7DQogIHBhZGRpbmctbGVmdDogMTZweDsNCiAgcGFkZGluZy10b3A6IDAuMXB4Ow0KICBwYWRkaW5nLWJvdHRvbTogMXB4Ow0KICBmb250LXNpemU6IDExcHg7DQogIGNvbG9yOiB3aGl0ZTsNCiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsNCn0NCg0KLsO4a29ub21pIHsNCiAgYm94LXNoYWRvdzogM3B4IDNweCA0cHggYmxhY2s7DQogIGJhY2tncm91bmQ6ICMwMDdGOTk7DQogIHBhZGRpbmctcmlnaHQ6IDE1cHg7DQogIHBhZGRpbmctbGVmdDogMTZweDsNCiAgcGFkZGluZy10b3A6IDFweDsNCiAgcGFkZGluZy1ib3R0b206IDAuMXB4Ow0KICBmb250LXNpemU6IDExcHg7DQogIGNvbG9yOiB3aGl0ZTsNCiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsNCn0NCg0KLnR2w6ZyZ8OlZW5kZSB7DQogIGJveC1zaGFkb3c6IDNweCAzcHggNHB4IGJsYWNrOw0KICBiYWNrZ3JvdW5kOiAjZmFhNDFhOw0KICBwYWRkaW5nLXJpZ2h0OiAxNXB4Ow0KICBwYWRkaW5nLWxlZnQ6IDE2cHg7DQogIHBhZGRpbmctdG9wOiAwLjFweDsNCiAgcGFkZGluZy1ib3R0b206IDFweDsNCiAgZm9udC1zaXplOiAxMXB4Ow0KICBjb2xvcjogd2hpdGU7DQogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7DQp9DQoNCi5jb250YWluZXIgew0KICB3aWR0aDogaW5oZXJpdDsNCn0NCg0KLnNjcm9sbC0xMDAgew0KICBtYXgtaGVpZ2h0OiAxMDA7DQogIG92ZXJmbG93LXk6IGF1dG87DQogIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7DQp9DQoNCg0KcHJlIHsNCiAgbWF4LWhlaWdodDogMzAwcHg7DQogIG92ZXJmbG93LXk6IGF1dG87DQp9DQoNCnByZVtjbGFzc10gew0KICBtYXgtaGVpZ2h0OiAzMDBweDsNCn0NCg0KYGBgDQoNCjxicj4NCjxicj4NCg0KPGNlbnRlcj4NCg0KLS0tDQogDQojIFtgciB0eHQkRkkkdGl0bGVbbGFuZ3VhZ2VdYF17LnRpdGxlfQ0KIA0KLS0tDQo8L2NlbnRlcj4NCg0KPGRldGFpbHM+IDxzdW1tYXJ5PiBgciB0eHQkRkkkc3ViMVtsYW5ndWFnZV1gIDwvc3VtbWFyeT4gDQo8YnI+DQo8YnV0dG9uIGNsYXNzPSJhY2NvcmRpb24iPiBgciBwYXN0ZTAoIioqVGFiZWwgMTogKioiLCBzdGF0Z2xfbWV0YShzdGF0Z2xfdXJsKCJGSVgwMDgiLCBsYW5nID0gbGFuZ3VhZ2UpKVsxXSR0aXRsZSkgYCA8L2J1dHRvbj4gPGRpdiBjbGFzcz0icGFuZWwiPg0KYGBge3IgRklYMDA4fQ0KDQpGSVgwMDhfcmF3IDwtIA0KICBzdGF0Z2xfdXJsKCJGSVgwMDgiLCBsYW5nID0gbGFuZ3VhZ2UpICU+JQ0KICBzdGF0Z2xfZmV0Y2goDQogICAgdGltZSAgICAgID0gcHhfdG9wKDEpLA0KICAgIG5hdGlvbiAgICA9ICJHUkwiLA0KICAgIHNwZWNpZXMgICA9IHB4X2FsbCgpLA0KICAgIHVuaXQgICAgICA9IHB4X2FsbCgpLA0KICAgIC5jb2xfY29kZSA9IFRSVUUNCiAgKSAlPiUgDQogIGFzX3RpYmJsZSgpDQoNCg0KRklYMDA4IDwtIA0KICBGSVgwMDhfcmF3ICU+JSANCiAgc2VsZWN0KHRpbWUsIHVuaXQsIHNwZWNpZXMsIHZhbHVlKSAlPiUgDQogIGZpbHRlcih2YWx1ZSAhPSAwKSAlPiUgDQogIHNwcmVhZCh1bml0LCB2YWx1ZSkNCg0KRklYMDA4ICU+JSANCiAgc2VsZWN0KC0xKSAlPiUgDQogIHJlbmFtZSgiICIgPSAxKSAlPiUgDQogIHN0YXRnbF90YWJsZSgpICU+JSANCiAgcGFja19yb3dzKGluZGV4ID0gRklYMDA4W1sidGltZSJdXSAlPiUgdGFibGUoKSkNCiAgDQoNCmBgYA0KPGJyPg0KWyFbXShgciBsb2dvYCl7d2lkdGg9NDB9YHIgcGFzdGUoc291cmNlLCAiRklYMDA4IilgXShgciBwYXN0ZTAoImh0dHBzOi8vYmFuay5zdGF0LmdsOjQ0My9zcS8zZTY3ZjAyZS1mOGFmLTQ4YWQtYjA0NS1jOGQ3ODU5N2IwOTIiLCBvcHRpb24pYCl7dGFyZ2V0PSJfYmxhbmsifQ0KPC9kaXY+IA0KPC9kZXRhaWxzPg0KDQoNCjxkZXRhaWxzPiA8c3VtbWFyeT4gYHIgdHh0JEZJJHN1YjJbbGFuZ3VhZ2VdYCA8L3N1bW1hcnk+DQo8YnI+DQoNCjxidXR0b24gY2xhc3M9ImFjY29yZGlvbiI+IGByIHBhc3RlMCgiKipUYWJlbCAyOiAqKiIsIHN0YXRnbF9tZXRhKHN0YXRnbF91cmwoIkZJWDAwNCIsIGxhbmcgPSBsYW5ndWFnZSkpWzFdJHRpdGxlKSBgIDwvYnV0dG9uPiA8ZGl2IGNsYXNzPSJwYW5lbCI+DQoNCmBgYHtyIEZJWDAwNH0NCg0KRklYMDA0X3JhdyA8LSANCiAgc3RhdGdsX3VybCgiRklYMDA0IiwgbGFuZyA9IGxhbmd1YWdlKSAlPiUgDQogIHN0YXRnbF9mZXRjaCgNCiAgICB0aW1lICAgICAgPSBweF9hbGwoKSwNCiAgICBzcGVjaWVzICAgPSBweF9hbGwoKSwNCiAgICB1bml0ICAgICAgPSBweF9hbGwoKSwNCiAgICAuY29sX2NvZGUgPSBUUlVFDQogICkgJT4lIA0KICBhc190aWJibGUoKQ0KDQpGSVgwMDQgPC0gDQogIEZJWDAwNF9yYXcgJT4lIA0KICBmaWx0ZXIoDQogICAgdGltZSA9PSBtYXgodGltZSksDQogICAgdmFsdWUgIT0gMA0KICAgICkgJT4lIA0KICBzcHJlYWQodW5pdCwgdmFsdWUpDQoNCkZJWDAwNCAlPiUgDQogIHNlbGVjdCgtMSkgJT4lIA0KICByZW5hbWUoIiAiID0gMSkgJT4lIA0KICBzdGF0Z2xfdGFibGUoKSAlPiUgDQogIHBhY2tfcm93cyhpbmRleCA9IEZJWDAwNFtbInRpbWUiXV0gJT4lIHRhYmxlKCkpDQoNCg0KDQoNCg0KYGBgDQo8YnI+DQpbIVtdKGByIGxvZ29gKXt3aWR0aD00MH1gciBwYXN0ZShzb3VyY2UsICJGSVgwMDQiKWBdKGByIHBhc3RlMCgiaHR0cHM6Ly9iYW5rLnN0YXQuZ2w6NDQzL3NxLzUwOWFjY2VmLTIwNmMtNDI4MS04M2JkLWFhYWU5M2I3NjNkNiIsIG9wdGlvbilgKXt0YXJnZXQ9Il9ibGFuayJ9DQo8L2Rpdj4gDQoNCg0KPGJ1dHRvbiBjbGFzcz0iYWNjb3JkaW9uIj4gYHIgcGFzdGUwKCIqKlRhYmVsIDM6ICoqIiwgc3RhdGdsX21ldGEoc3RhdGdsX3VybCgiRklYQkVWSVMiLCBsYW5nID0gbGFuZ3VhZ2UpKVsxXSR0aXRsZSkgYCA8L2J1dHRvbj4gPGRpdiBjbGFzcz0icGFuZWwiPg0KDQpgYGB7ciBGSVhCRVZJU30NCg0KRklYQkVWSVNfcmF3IDwtIA0KICBzdGF0Z2xfdXJsKCJGSVhCRVZJUyIsIGxhbmcgPSBsYW5ndWFnZSkgJT4lIA0KICBzdGF0Z2xfZmV0Y2goDQogICAgImdlb2dyYXBoaWMgbG9jYXRpb24iID0gcHhfYWxsKCksDQogICAgc2V4ICAgICAgICAgICAgICAgICAgID0gcHhfYWxsKCksDQogICAgdGltZSAgICAgICAgICAgICAgICAgID0gcHhfYWxsKCksDQogICAgLmNvbF9jb2RlICAgICAgICAgICAgID0gVFJVRQ0KICApICU+JSANCiAgYXNfdGliYmxlKCkNCg0KRklYQkVWSVMgPC0gDQogIEZJWEJFVklTX3JhdyAlPiUgDQogIGZpbHRlcih0aW1lID09IG1heCh0aW1lKSkgJT4lIA0KICBzcHJlYWQoYGdlb2dyYXBoaWMgbG9jYXRpb25gLCB2YWx1ZSkNCg0KDQpGSVhCRVZJUyAlPiUgDQogIHNlbGVjdCgtdGltZSkgJT4lIA0KICByZW5hbWUoIiAiID0gMSkgJT4lIA0KICBzdGF0Z2xfdGFibGUoKSAlPiUgDQogIHBhY2tfcm93cyhpbmRleCA9IEZJWEJFVklTW1sidGltZSJdXSAlPiUgdGFibGUoKSkNCg0KDQoNCmBgYA0KPGJyPg0KWyFbXShgciBsb2dvYCl7d2lkdGg9NDB9YHIgcGFzdGUoc291cmNlLCAiRklYQkVWSVMiKWBdKGByIHBhc3RlMCgiaHR0cHM6Ly9iYW5rLnN0YXQuZ2w6NDQzL3NxLzMzZjA3NTdhLTM0NGItNDhjMC1hZGZjLTAxMmJkMTk1MDAxMiIsIG9wdGlvbilgKXt0YXJnZXQ9Il9ibGFuayJ9DQo8L2Rpdj4gDQo8L2RldGFpbHM+IA0KDQoNCjxkZXRhaWxzPiA8c3VtbWFyeT4gYHIgdHh0JEZJJHN1YjNbbGFuZ3VhZ2VdYCA8L3N1bW1hcnk+DQo8YnI+DQo8YnV0dG9uIGNsYXNzPSJhY2NvcmRpb24iPiBgciBwYXN0ZTAoIioqVGFiZWwgNDogKioiLCBzdGF0Z2xfbWV0YShzdGF0Z2xfdXJsKCJGSVhIRFlSIiwgbGFuZyA9IGxhbmd1YWdlKSlbMV0kdGl0bGUpIGAgPC9idXR0b24+IDxkaXYgY2xhc3M9InBhbmVsIj4NCg0KYGBge3IgRklYSERZUn0NCg0KRklYSERZUl9yYXcgPC0gDQogIHN0YXRnbF91cmwoIkZJWEhEWVIiLCBsYW5nID0gbGFuZ3VhZ2UpICU+JSANCiAgc3RhdGdsX2ZldGNoKA0KICAgIHNwZWNpZXMgICA9IHB4X2FsbCgpLA0KICAgIHRpbWUgICAgICA9IHB4X2FsbCgpLA0KICAgIC5jb2xfY29kZSA9IFRSVUUNCiAgKSAlPiUgDQogIGFzX3RpYmJsZSgpDQoNCg0KRklYSERZUiA8LQ0KICBGSVhIRFlSX3JhdyAlPiUgDQogIGZpbHRlcih0aW1lID09IG1heCh0aW1lKSkgJT4lIA0KICBmaWx0ZXIodmFsdWUgIT0gIk5BIikNCg0KDQoNCmlmKGxhbmd1YWdlID09ICJkYSIpew0KICB0YWJsZSA8LSBGSVhIRFlSICU+JSByZW5hbWUoIkFudGFsIiA9IHZhbHVlKQ0KfSBlbHNlIGlmKGxhbmd1YWdlID09ICJrbCIpew0KICB0YWJsZSA8LSBGSVhIRFlSICU+JSByZW5hbWUoIlFhc3NpdW5lcmkiID0gdmFsdWUpDQp9IGVsc2Ugew0KICB0YWJsZSA8LSBGSVhIRFlSICU+JSByZW5hbWUoIlBpZWNlcyIgPSB2YWx1ZSkNCn0NCg0KDQp0YWJsZSAlPiUgDQogIHNlbGVjdCgtdGltZSkgJT4lIA0KICByZW5hbWUoIiAiID0gMSkgJT4lIA0KICBzdGF0Z2xfdGFibGUoKSAlPiUgDQogIHBhY2tfcm93cyhpbmRleCA9IEZJWEhEWVJbWyJ0aW1lIl1dICU+JSB0YWJsZSgpKQ0KICANCg0KYGBgDQo8YnI+DQpbIVtdKGByIGxvZ29gKXt3aWR0aD00MH1gciBwYXN0ZShzb3VyY2UsICJGSVhIRFlSIilgXShgciBwYXN0ZTAoImh0dHBzOi8vYmFuay5zdGF0LmdsOjQ0My9zcS8yNzgxN2ViOC1jYzNiLTQwZDQtYmY2MC0zY2U4ZTgwZTBlZjMiLCBvcHRpb24pYCl7dGFyZ2V0PSJfYmxhbmsifQ0KPC9kaXY+IA0KPC9kZXRhaWxzPg0KDQoNCjxkZXRhaWxzPiA8c3VtbWFyeT4gYHIgdHh0JEZJJHN1YjRbbGFuZ3VhZ2VdYCA8L3N1bW1hcnk+DQo8YnI+DQo8YnV0dG9uIGNsYXNzPSJhY2NvcmRpb24iPiBgciBwYXN0ZTAoIioqVGFiZWwgNTogKioiLCBzdGF0Z2xfbWV0YShzdGF0Z2xfdXJsKCJGSVgwMDkiLCBsYW5nID0gbGFuZ3VhZ2UpKVsxXSR0aXRsZSkgYCA8L2J1dHRvbj4gPGRpdiBjbGFzcz0icGFuZWwiPg0KDQpgYGB7ciBBUlhMRUQ0fQ0KDQpGSVgwMDlfcmF3IDwtIA0KICBzdGF0Z2xfdXJsKCJGSVgwMDkiLCBsYW5nID0gbGFuZ3VhZ2UpICU+JSANCiAgc3RhdGdsX2ZldGNoKA0KICAgIHRpbWUgICAgICA9IHB4X2FsbCgpLA0KICAgIHF1YXJ0ZXIgICA9IDQsDQogICAgc3BlY2llcyAgID0gYygzLCA3LCAxMCksDQogICAgLmNvbF9jb2RlID0gVFJVRQ0KICApICU+JSANCiAgYXNfdGliYmxlKCkNCg0KDQoNCkZJWDAwOSA8LSANCiAgRklYMDA5X3JhdyAlPiUgDQogIGZpbHRlcih2YWx1ZSAhPSAiTkEiKSAlPiUgDQogIHNwcmVhZCh0aW1lLCB2YWx1ZSkNCg0KDQoNCkZJWDAwOSAlPiUgDQogIHNlbGVjdCgtcXVhcnRlcikgJT4lIA0KICByZW5hbWUoIiAiID0gMSkgJT4lIA0KICBzdGF0Z2xfdGFibGUoKSAlPiUgDQogIHBhY2tfcm93cyhpbmRleCA9IEZJWDAwOVtbInF1YXJ0ZXIiXV0gJT4lIHRhYmxlKCkpDQoNCg0KDQoNCg0KDQpgYGANCjxicj4NClshW10oYHIgbG9nb2Ape3dpZHRoPTQwfWByIHBhc3RlKHNvdXJjZSwgIkZJWDAwOSIpYF0oYHIgcGFzdGUwKCJodHRwczovL2Jhbmsuc3RhdC5nbDo0NDMvc3EvYjIzNzk3NmItM2E0MS00NDEyLWI4MTUtZTU0ZmMzMTBiYzg5Iiwgb3B0aW9uKWApe3RhcmdldD0iX2JsYW5rIn0NCjwvZGl2PiANCjwvZGV0YWlscz4gDQoNCjxkZXRhaWxzPiA8c3VtbWFyeT4gYHIgdHh0JEZJJHN1YjVbbGFuZ3VhZ2VdYCA8L3N1bW1hcnk+DQo8YnI+DQo8YnV0dG9uIGNsYXNzPSJhY2NvcmRpb24iPiBgciBwYXN0ZTAoIioqVGFiZWwgNjogKioiLCBzdGF0Z2xfbWV0YShzdGF0Z2xfdXJsKCJGSVgwMjAiLCBsYW5nID0gbGFuZ3VhZ2UpKVsxXSR0aXRsZSkgYCA8L2J1dHRvbj4gPGRpdiBjbGFzcz0icGFuZWwiPg0KDQpgYGB7ciBGSVgwMjB9DQoNCkZJWDAyMF9yYXcgPC0gDQogIHN0YXRnbF91cmwoIkZJWDAyMCIsIGxhbmcgPSBsYW5ndWFnZSkgJT4lIA0KICBzdGF0Z2xfZmV0Y2goDQogICAgc3BlY2llcyA9IHB4X2FsbCgpLA0KICAgIGZvcm0gPSBweF9hbGwoKSwNCiAgICB0aW1lID0gcHhfYWxsKCksDQogICAgLmNvbF9jb2RlID0gVFJVRQ0KICApICU+JSANCiAgYXNfdGliYmxlKCkNCg0KRklYMDIwIDwtIA0KICBGSVgwMjBfcmF3ICU+JSANCiAgZmlsdGVyKHRpbWUgPT0gbWF4KHRpbWUpKSAlPiUgDQogIHNwcmVhZChmb3JtLCB2YWx1ZSkNCg0KDQpGSVgwMjAgJT4lIA0KICBzZWxlY3QoLXRpbWUpICU+JSANCiAgcmVuYW1lKCIgIiA9IDEpICU+JSANCiAgc3RhdGdsX3RhYmxlKHJlcGxhY2VfMHMgPSBUUlVFKSAlPiUgDQogIHBhY2tfcm93cyhpbmRleCA9IEZJWDAyMFtbInRpbWUiXV0gJT4lIHRhYmxlKCkpDQoNCg0KDQoNCmBgYA0KPGJyPg0KWyFbXShgciBsb2dvYCl7d2lkdGg9NDB9YHIgcGFzdGUoc291cmNlLCAiRklYMDIwIilgXShgciBwYXN0ZTAoImh0dHBzOi8vYmFuay5zdGF0LmdsOjQ0My9zcS9lNjQzZWE5Ny1mMWEzLTQ2ODctOTY0OC00MTNiZmFkNTQwZDgiLCBvcHRpb24pYCl7dGFyZ2V0PSJfYmxhbmsifQ0KPC9kaXY+IA0KPC9kZXRhaWxzPiANCg0KDQoNCjxociBzdHlsZT0iYm9yZGVyOjFweCByaWRnZSBsaWdodGdyYXkiPiA8L2hyPg0KPGNlbnRlcj4gPHNwYW4gc3R5bGU9J2NvbG9yOiNEM0QzRDM7IGZvbnQtc2l6ZTo5MCU7Jz4gYHIgcGFzdGUodHh0JHVwZGF0ZVtsYW5ndWFnZV0sIGZvcm1hdChTeXMuRGF0ZSgpLCAiJWQuICVCICVZIikpYCA8L3NwYW4+IDwvY2VudGVyPg0KDQoNCg0KDQo8c2NyaXB0Pg0KdmFyIGFjYyA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoImFjY29yZGlvbiIpOw0KdmFyIGk7DQoNCmZvciAoaSA9IDA7IGkgPCBhY2MubGVuZ3RoOyBpKyspIHsNCiAgYWNjW2ldLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgZnVuY3Rpb24oKSB7DQogICAgdGhpcy5jbGFzc0xpc3QudG9nZ2xlKCJhY3RpdmUiKTsNCiAgICB2YXIgcGFuZWwgPSB0aGlzLm5leHRFbGVtZW50U2libGluZzsNCiAgICBpZiAocGFuZWwuc3R5bGUubWF4SGVpZ2h0KSB7DQogICAgICBwYW5lbC5zdHlsZS5tYXhIZWlnaHQgPSBudWxsOw0KICAgIH0gZWxzZSB7DQogICAgICBwYW5lbC5zdHlsZS5tYXhIZWlnaHQgPSBwYW5lbC5zY3JvbGxIZWlnaHQgKyAicHgiOw0KICAgIH0gDQogIH0pOw0KfQ0KPC9zY3JpcHQ+DQoNCg0K